<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    /* 
      js库：能够为某个问题提供合理的解决方案，jquery(dom操作，xhr) bootStrap
      框架：能够为项目提供一个完整的解决方案， react(MVC) Vue(MVVM) Anglargle(MVC)
    */
    
    /* 
    
     react起源与发展：
     react起源于faceBook内部项目，faceBook开发团队不满意市场上所有的javaScript框架所以自己开发了一套react框架，2013年5月 正式开源react。
    */
    
    /* 
    react特点：
    1.声明式设计-React采用声明范式，可以轻松描述应用。
    2.高效 - React通过对DOM的模拟(虚拟DOM)，最大限度的减少于DOM的交互
    3.灵活 - React可以与已知的库或框架很好的配合。
    4.JSX - JSX语法是javaScript语法的扩展语言。
    5.组件 - 通过React构建组件，使得代码更加容易得到复用，能够很好的应用在大型项目中。
    6.单向数据流 - React 实现了单向响应的数据流，从而减少了重复代码，比传统的数据绑定更简单。
    */

   /* 
    虚拟DOM:
    1. 传统的DOM更新：
    每个真实的页面都会对应一个DOM树，在传统的页面开发模式中，每次你需要更新页面时，都要手动操作DOM来进行更新，这样的话频繁操作DOM会非常浪费浏览器性能。
   
    2. 虚拟DOM
    在js中DOM的操作非常的昂贵，在前端开发中性能消耗最大的DOM操作，React把真实DOM树转化为javaScript对象树（虚拟dom）再来更新。
    虚拟dom就是使用原生js对象描绘的DOM节点。
   */
</script>
</html>